#ifndef DOG_H
#define DOG_H
#include "animal.h"
#include "tail.h"

#define DOG_KLASS(_object_)	((dog_klass_info*)_object_)
#define DOG(_object_)	((dog*)_object_)

typedef animal_klass_info dog_klass_info;
extern dog_klass_info* dog_klass;

typedef struct _dog dog;
struct _dog
{
/*base*/
	animal base;

/*private data*/
	int age;
	tail* dog_tail;
};

void dog_init(void);
int dog_get_age(dog* self);
void dog_set_age(dog* self, int age);
tail* dog_get_tail(dog* self);
void dog_set_tail(dog* self, tail* dog_tail);
#endif
